home *** CD-ROM | disk | FTP | other *** search
/ InfoMagic Internet Tools 1995 April / Internet Tools.iso / dos_win / pcroute / readme.pcroute.doc < prev    next >
Encoding:
Text File  |  1992-02-09  |  11.1 KB  |  246 lines

  1.  
  2.  
  3.             PCROUTE - an IP routing program from the IBM PC
  4.                              Vance Morrison
  5.                         morrison@casbah.acns.nwu.edu
  6.  
  7.     Traditionally IP routers have been fairly high performance,
  8. expensive machines.  Typically they run about $5000-$10,000 a unit.
  9. Until now a IP router for under $5000 was just about impossible
  10. to get.  Recent developments in PC hardware, however, has made
  11. it possible to convert a PC to an IP router for a TOTAL of $800
  12. a unit.  This price is less that the cost of many ethernet boards
  13. and thus it now makes sense to always use dedicated router to
  14. perform IP gatewaying functions.  
  15.  
  16. ---------------------------------------------------------------------
  17. What is PCroute?
  18.  
  19.     PCroute is software written for an PC/XT (or AT) or clone that will 
  20. allow it to act as a IP router.   At present the following interfaces
  21. are supported.
  22.  
  23.         Ethernet - (WD8003E card) (recommeded no more than 4 interfaces)
  24.         Starlan  - (WD8003S card) (up to 6 interfaces)
  25.         Localtalk - (Apple localtalk card for the PC) (1 interface max)
  26.         SLIP      - (COM1..COM4)  (2 interfaces max)
  27.  
  28.    One of the most common configuration for the router is as an
  29. ethernet-ethernet router, but this is not the only configuration possible.
  30. The software supports up to 6 interfaces of varying types, so many
  31. many configurations are possible.  Exact details on what is possible
  32. is explained in the installation/compilation manual
  33.  
  34.    In addition to the XT, the only other hardware needed are the
  35. networking cards, which at present run about $225 a piece (for ethernet).  
  36. Since you can buy an XT (10Mhz, without an monitor) for $350, the total
  37. cost for the hardware is $800
  38.  
  39. ---------------------------------------------------------------------
  40. What do I need to install PCroute?
  41.  
  42.         1) An XT computer (does not need monitor) with a floppy
  43.         2) The proper interface cards
  44.                 Ethernet : WD8003E              Ethercard Plus
  45.                 Starlan  : WD8003S,WD8003SH     Starcard,Starlink Plus
  46.                 Localtalk: Apple localtalk PC card
  47.                 SLIP     : COM[1-4] ports
  48.  
  49. ---------------------------------------------------------------------
  50. How Fast is PC route?
  51.  
  52.     Some may argue that a PC simply is not fast enough to be a
  53. good IP router.  For slow networks (Localtalk SLIP) this is not really
  54. an issue.  For Ethernet it is a real concern.  Luckily, in the case
  55. of Ethernet (and starlan), the Western Digital cards do a lot of the work.  
  56. All the input packet queuing is done by the card, freeing the PC to do the
  57. routing task.   By programming in assembler and optimizing for peak 
  58. efficiency (the main loop has NO procedure calls), the PC is up to the task.  
  59.  
  60.     Actual tests indicate that that following formula is a worst case 
  61. estimate of the throughput of PCroute on a 4.77Mhz XT (based on actual 
  62. measurments).
  63.  
  64.         packet_delay = .51 + .00406 * len      msec
  65.  
  66.    Where 'len' is the length of the packet in bytes.  Thus PCroute has a 
  67. fixed per packet overhead of .51 msec and takes .00406 msec/byte to transfer 
  68. the packet from one network to the other.  
  69.  
  70.  
  71.  
  72.  
  73.  
  74.     Thus for the largest packet size (1514) we get throughput of 
  75.  
  76.         packet_delay = .51 + .00406 * 1514 = 6.65 ms
  77.         throughput = len*8/packet_delay = 1.8 Mbit/sec
  78.  
  79.     For the smallest packet size (64) we get a throughput of
  80.  
  81.         packet_delay = .51 + .00406 * 64 = .77 ms
  82.         throughput = len*8/packet_delay = .66 Mbit/sec
  83.  
  84.    If you are going to by the XT needed, please buy a clone (without
  85. a monitor) with a 10Mhz CPU speed (cost < $350).  This will almost
  86. double the throughput measured above.  If you need more speed you can
  87. go with an AT clone and a even faster CPU speed.  Here are some 
  88. actual measurements of packet speeds for some common machines.
  89.  
  90.                  per packet       per byte     Packet rate    Throughput
  91.                    delay           delay        (64bytes)     (1500 bytes)
  92. -----------------------------------------------------------------------------
  93. 4.77 Mhz XT    | .51 msec       .00406 msec     1300 /sec    1.8 Mbits/sec
  94. 10 Mhz XT      | .237 msec      .00254 msec     2500 /sec    3.0 Mbits/sec
  95. 6 Mhz AT       | .169 msec      .00228 msec     3200 /sec    3.3 Mbits/sec
  96. 12 Mhz AT (est)| .100 msec      .00220 msec     4150 /sec    3.5 Mbits/sec
  97. 16 Mhz AT      | .050 msec      .00190 msec     5800 /sec    4.1 Mbits/sec
  98.  
  99.    As you can see, at the high end, the PCrouter can sustain a thoughput
  100. of close to half the BANDWIDTH of a ethernet (remember 5Mbits of sustained 
  101. load is a HEAVY load for an ethernet).  Also remember that this is packets
  102. routed THOUGH the router.  Thus even if 4/10 of the ethernet bandwidth is
  103. being used (that is your ethernet is HEAVILY loaded) and ALL that traffic
  104. is going though the router, PCroute can still keep up.
  105.    
  106.    Note also that the throughput measurements are based on packet delay.
  107. This tends to underestimate the thoughput of the router since it ignores
  108. the fact that there are in fact three processes in the router that are
  109. doing work concerently.  Thus the router can actually handle slightly more
  110. traffic than what the above figure would indicate.
  111.  
  112.    In addition the Ethernet boards have an on-board 6.5K packet input buffer.
  113. Thus packets that come at the PCrouter too fast for it to process will be 
  114. queued.  This queueing happens on board and can keep up with the maximum
  115. 10Mbit/sec bit rate.  Thus the router will start dropping packets only 
  116. after this 6.5K buffer is exhausted.
  117.  
  118.    Note that since SUN NFS likes to send 8K blocks in fast spurts
  119. this will sometimes cause the router to drop packets (since this is
  120. larger than the input queue buffer size).  If you are running NFS through
  121. the router, I suggest that you set the NFS block size down to 4K for
  122. file systems that are mounted though the router (look for 'rsize' and 
  123. 'wsize' in man fstab).  We use NFS quite heavily here at NU and as 
  124. long as rwize and wsize are set to 4K we have no problem. 
  125.  
  126. ---------------------------------------------------------------------
  127. What about SLIP speeds?
  128.  
  129.     PCroute also supports up to 2 serial lines in addition to the other
  130. interfaces.  These lines can operate at all the common baud rates 
  131. up to 19.2K.  In PCroute with a faster processor (10Mhz XT or an AT clone)
  132. can handle 38.4K or even 57.6K.   All of this using the standard 8250
  133. serial ports.
  134.  
  135.     Note because PC serial ports interupt the processor on EVERY character
  136. SLIP consumes a fair amount of the CPU.  On a 4.77MHZ XT the interupts 
  137. for two SLIP ports running at 19.2K Baud consume about 1/2 the available 
  138. CPU time.  (actually measurements show that two slip lines running full 
  139. tilt at 19.2K consume slightly less than 1/2 the CPU).  Thus packet delays
  140. will double.  Obviously the situation gets better as CPU speed increases.
  141. On a 12Mhz AT interupts consume less than 1/10 of the CPU.
  142.  
  143. ---------------------------------------------------------------------
  144. What is localtalk support?
  145.  
  146.     PCroute supports IP inside of localtalk (appletalk).  This allows
  147. you to send IP packets though localtalk nets.  Since localtalk can
  148. be sent over twisted pair (phonenet) large distances (5000 ft with 
  149. a star controler), this method has many of the advantages of SLIP
  150. and is a higher speed solution.  In addition any MACs on the localtalk
  151. network that have MacTCP can access the IP network.  
  152.     Note, however that PCroute does NOT support encapuslating appletalk 
  153. in IP (thus Ushar and CAP will not work), and does NOT support dynamic
  154. IP address assignement.  
  155.  
  156. ---------------------------------------------------------------------
  157. What PC route supports?
  158.  
  159.    PCroute was designed to be a fully functional IP router.  In 
  160. particular it supports
  161.  
  162.         1) IP routing with Subsets (however the subnet mask
  163.            must begin with 255.255)
  164.         2) Static routing with up to 250 routes.
  165.         3) responds to ICMP echo (ping) 
  166.         4) Sends ICMP TTL, Redirect, Unreachable when appropriate
  167.         5) Fragmentation where necessary
  168.         6) RIP dynamic routing protocol
  169.         7) Up to 6 interfaces of varying types
  170.         8) Error logging using BSD syslog
  171.         9) Optional proxy ARP
  172.         10) Bootp forwarding
  173.  
  174. Note that although the software supports up to 6 interfaces, the 
  175. total throughput of the router is fixed by the speed of the processor.
  176. For fast boards (ethernet) this gets excessive after 4 interfaces 
  177. are installed.  
  178.  
  179. ---------------------------------------------------------------------
  180. What PC route DOESN'T support?
  181.  
  182.         1) Ethernet cards besides WD8003E.  It is possible to write
  183.            the driver code for other cards, but I personally have no
  184.            desire to do so.
  185.  
  186. ---------------------------------------------------------------------
  187. Wish List
  188.  
  189. These are things that I would like to add to PCroute, but it looks like
  190. I will not have the time.
  191.  
  192.         1) SNMP support.  Everybody wants SNMP support.  Well there is
  193.            nothing that says PCroute can't have it.  I have written the
  194.            code with this support in mind.  In addition, some people at CMU
  195.            have already written the hard part of SNMP and all that would
  196.            be necessary is to graft that code onto the various databases
  197.            inside PCroute.   I think this would take about 1-2 months of
  198.            half time progamming effort.
  199.  
  200.         2) Any other interface that someone might what (T1 or X.25 for
  201.            example).   PCroute has been designed to make this addition
  202.            relatively simple.
  203.  
  204. ---------------------------------------------------------------------
  205. Hints
  206.  
  207.         1) We found that the 10Mhz XT clones that Jamco and others sell
  208.            work very well.  One nice feature about these units is their
  209.            BIOS.  By setting the dip switches in the PC, you can tell it
  210.            that there is no Monitor.  This also tells the BIOS not to
  211.            check for a keyboard either.  Thus you don't need to buy either
  212.            the keyboard or the monitor.  Other XT BIOS ALWAYS check for
  213.            the keyboard, and thus you have to plug it in even though you
  214.            never use it.
  215.  
  216. ---------------------------------------------------------------------
  217. Reliability
  218.  
  219.         The reliability of PCroute has been EXCELLENT.  We have been
  220.         using these routers for months now in ten places with absolutely 
  221.         no failures.   If you wish to PING one for yourself here are some 
  222.         PC routers on our campus
  223.  
  224.                 129.105.49.13
  225.                 129.105.1.1
  226.                 129.105.7.1
  227.  
  228. ---------------------------------------------------------------------
  229. Comments and Bug reports
  230.  
  231.         I am interested in finding out what you think of PCroute and
  232.         how well it performs for you.  I am also interested in hearing
  233.         about any problems you have or bugs in the documentation.
  234.         You should send your comments to 
  235.                 
  236.                 Vance Morrison <morrison@casbah.acns.nwu.edu>
  237.  
  238.         Note that since I am not paid to support this software, I can
  239.         not guarantee that I can respond to your problem, but I will
  240.         try.
  241.  
  242.  
  243.                                                 Vance Morrison
  244.                                                 Northwestern University
  245.  
  246.